package cn.ilovese.collect.service.collaboration_task;

import cn.ilovese.collect.vo.NullVO;
import cn.ilovese.collect.vo.ResultVO;
import cn.ilovese.collect.vo.collaboration_task.CollaborationTaskFromVO;
import cn.ilovese.collect.vo.collaboration_task.CollaborationTaskVO;
import cn.ilovese.collect.vo.collaboration_task.ReportSummaryVO;
import cn.ilovese.collect.vo.collaboration_task.TaskClaimFormVO;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

public interface CollaborationTaskService {
    ResultVO<Integer> createCollaborationTask(CollaborationTaskFromVO collaborationTask);

    ResultVO<CollaborationTaskVO> getCollaborationTask(Integer taskId);

    ResultVO<List<List<ReportSummaryVO>>> getCollaborationTaskReportGroups(Integer taskId);

    ResultVO<List<Integer>> getCollaborationClaimedSubTask(Integer taskId);

    ResultVO<List<ReportSummaryVO>> getWorkerCollaborationTaskGroup(Integer taskId, Integer userId);

    ResultVO<NullVO> pickSubTask(TaskClaimFormVO taskClaimFormVO);
}
